Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005 2004
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Bloomfield Hills Challenger Wimbledon - London Infosys Hall of Fame Open - Newport U.S. Open - New York Shanghai Rolex Masters - Shanghai Shenzhen 1 Challenger Playford Challenger Shenzhen 2 Challenger Calgary Challenger Yokohama Challenger Drummondville Challenger Brisbane International - Brisbane Australian Open - Melbourne Dallas Open - Dallas Cleveland Challenger Abierto Mexicano Telcel - Acapulco Shenzhen 1 Challenger US Men's Clay Court Championship - Houston Taipei Challenger San Luis Potosi Challenger Busan Challenger Wimbledon - London Gwangju Challenger Guangzhou Challenger French Open - Paris Boss Open - Stuttgart Surbiton Challenger Terra Wortmann Open - Halle Winston-Salem Open - Winston-Salem National Bank Open - Montreal U.S. Open - New York Shanghai Rolex Masters - Shanghai Almaty Open - Almaty Rolex Paris Masters - Paris Phoenix Challenger BNP Paribas Open - Indian Wells Dallas Open - Dallas Abierto Mexicano Telcel - Acapulco San Luis Potosi Challenger Brisbane International - Brisbane Adelaide International - Adelaide Australian Open - Melbourne Miami Open - Miami Morelia Challenger Mexico City Challenger Gonet Geneva Open - Geneva Birmingham Challenger French Open - Paris cinch Championships - London Rothesay International - Eastbourne Newport Challenger National Bank Open - Toronto Wimbledon - London Mifel Tennis Open - Los Cabos Cincinnati Open - Cincinnati U.S. Open - New York Shanghai Rolex Masters - Shanghai Jinan Challenger Almaty Open - Almaty France F2 France F3 Nigeria F1 Nigeria F2 Algeria F1 Algeria F2 Iran F1 Iran F2 Italy F22 Italy F23 France F13 Tunisia F4 Tunisia F5 Tunisia F6 UAE F1 Qatar F1 Qatar F2 Qatar F3 Morocco F1 Tunisia F1 Tunisia F2 Tunisia F3 France F9 France F12 China F2 Poland F2 Egypt F2 France F6 France F17 France F18 France F19 Tunisia F5 France F1 France F3 Great Britain F3 Great Britain F4 Turkey F2 France F15 France F17 France F18 United Arab Emirates F2 Australia F12 Morocco F1 Morocco F2 Spain F16 Kuwait F1 Kuwait F2 Tunisia F1 Tunisia F2 Tunisia F3 Georgia F1 Australia F8 France F19 Australia F9 Australia F10 Australia F11 Morocco F1 Australia F1 Spain F7 Italy F2 Italy F3 France F6 Australia F3 Australia F4 Italy F8 Tunisia F1 Tunisia F2 Spain F29 Netherlands F5 Netherlands F6 USA F23 Morocco F7 Spain F35 Spain F36 Egypt F4 Egypt F5 Spain F39 Australia F11 New Zealand F1 Australia F12 Sudan F1 Australia F13 Sudan F2 Colombia F1 Colombia F2 Australia F1 Australia F3 Australia F4 Great Britain F7 Poland F1 Poland F2 Netherlands F1 Poland F4 Italy F16 Great Britain F8 Italy F17 France F12 Kazakhstan F4 Italy F22 Italy F23 Romania F7 Hong Kong F2 Australia F1 Australia F5 Chile F3 Saudi Arabia F1 Saudi Arabia F2 Tunisia F1 Tunisia F2 Tunisia F3 Morocco F3 France F19 France F20 Belgium F2 Portugal F2 Portugal F3 France F5 Morocco F2 Italy F12 Italy F13 Iran F1 Iran F2 France F17 Tunisia F4 Tunisia F6 Tunisia F4 Tunisia F5 Tunisia F7 China F1 France F2 France F3 Poland F1 Egypt F3 Egypt F3 France F7 Tunisia F1 Spain F19 Tunisia F2 Egypt F1 Egypt F2 Morocco F4 United Arab Emirates F1 Australia F11 Kuwait F2 Georgia F2 Tunisia F1 Austria F4 Austria F5 Austria F6 Romania F15 Spain F11 Spain F15 Morocco F2 Netherlands F2 Italy F5 China F6 Turkey F22 (Antalya) Challenger Ford de Cherbourg - Cherbourg Togliatti Cup - Togliatti Mordovia Cup 2005 - Saransk Ethias Tennis Trophy - Mons The LTA Men's Challenger - Southampton Nossa Caixa Tennis Cup - Sao Paulo Tunis Open 2006 - Tunis Tunis Open 2007 - Tunis Tunis Open - Tunis Timisoara Challenger - Timisoara Open D'Orleans - Orleans Tanger Challenger Meknes Challenger Rabat Challenger Marrakech Challenger Tunis Challenger Saransk Challenger San Sebastian Challenger Como Challenger Tulsa Challenger Quito Challenger Sacramento Challenger Genova Challenger Tanger Challenger Meknes Challenger Monza Challenger Tunis Challenger Alessandria Challenger San Benedetto Challenger Bucaramanga Challenger Burnie Challenger Caloundra Challenger Rabat Challenger Marrakech Challenger Santos Challenger Cremona Challenger Penza Challenger Astana Challenger Trani Challenger Samarkand Challenger Istanbul Challenger Izmir Challenger Mons Challenger Rennes Challenger Sao Jose Do Rio Preto Challenger Medellin Challenger Eckental Challenger Geneva Challenger Buenos Aires Challenger Bratislava Challenger Montevideo Challenger Burnie Challenger Kazan Challenger Caloundra Challenger Quimper Challenger Bergamo Challenger Kyoto Challenger Pingguo Challenger Rabat Challenger Marrakech Challenger Barletta Challenger St. Brieuc Challenger Blumenau Challenger Santos Challenger Sao Paulo Challenger Tunis Challenger Rome Challenger Furth Challenger Nottingham-2 Challenger Winnetka Challenger Granby Challenger Recanati Challenger Lexington Challenger Vancouver Challenger Istanbul Challenger Izmir Challenger Trnava Challenger Orleans Challenger Lermontov Challenger Tashkent Challenger Seoul Challenger Geneva Challenger Burnie Challenger West Lakes Challenger Sydney Challenger Kyoto Challenger Rimouski Challenger San Luis Potosi Challenger Itajai Challenger Santos Challenger Sao Paulo Challenger Tunis Challenger Rio Quente Challenger Nottingham Challenger Arad Challenger Kosice Challenger Timisoara Challenger Binghamton Challenger Lexington Challenger Aptos Challenger Shanghai Challenger Istanbul Challenger Izmir Challenger Fergana Challenger Tashkent Challenger Melbourne Challenger Geneva Challenger Traralgon Challenger Yokohama Challenger Maui Challenger Burnie Challenger Chitre Challenger Dallas Challenger West Lakes Challenger Morelos Challenger Guadalajara Challenger Santiago Challenger Santos Challenger Tunis Challenger Cali Challenger Rome Challenger Bordeaux Challenger Heilbronn Challenger Nottingham Challenger Mestre Challenger Caltanissetta Challenger Winnetka Challenger Granby Challenger Lexington Challenger Bangkok Challenger Shanghai Challenger Istanbul Challenger Izmir Challenger Charlottesville Challenger Knoxville Challenger Champaign Challenger Toyota Challenger Hong Kong Challenger Burnie Challenger New Delhi Challenger Kolkata Challenger San Luis Potosi Challenger Anning Challenger Turin Challenger Aix En Provence Challenger Bordeaux Challenger Manchester Challenger Ilkley Challenger Aptos Challenger Izmir Challenger Mons Challenger Rennes Challenger Ho Chi Minh City Challenger Ningboo Challenger Charlottesville Challenger Knoxville Challenger Champaign Challenger Toyota Challenger Maui Challenger Puebla Challenger Guadalajara Challenger Leon Challenger Le Gosier Challenger Bangkok Challenger Furth Challenger Manchester Challenger Surbiton Challenger Winnetka Challenger Lexington Challenger Istanbul Challenger Ho Chi Minh City Challenger Traralgon Challenger Canberra Challenger Kobe Challenger Toyota Challenger Aix En Provence Challenger Bordeaux Challenger Surbiton Challenger Gatineau Challenger Aptos Challenger Istanbul Challenger Izmir Challenger Brest Challenger Mouilleron-Le-Captif Challenger Canberra Challenger Cherbourg Challenger Zhuhai Challenger Shenzhen Challenger Qujing Challenger Tunis Challenger Cary Challenger Kaohsiung Challenger Columbus Challenger Tiburon Challenger Stockton Challenger Traralgon Challenger Canberra Challenger Burnie Challenger Chennai Challenger Bangkok Challenger Bangkok Challenger Shenzhen Challenger Zhangjiagang Challenger Taipei City Challenger Anning Challenger Nanchang Challenger Lisbon Challenger Almaty Challenger Nottingham Challenger Shymkent Challenger Ilkley Challenger Chengdu Challenger Yokkaichi Challenger Vancouver Challenger Baotou Challenger Jinan Challenger Cassis Challenger Glasgow Challenger Orleans Challenger Nur-Sultan Challenger Fairfield Challenger Ningboo Challenger Las Vegas Challenger Traralgon Challenger Liuzhou Challenger Shenzhen Challenger Playford Challenger Kobe Challenger Pune Challenger Bangkok Challenger Bangkok Challenger Bengalaru Challenger Prague Challenger Prague II Challenger Ostrava Challenger Iasi Challenger Sibiu Challenger Split Challenger Barcelona Challenger Alicante Challenger Marbella Challenger Parma Challenger Istanbul Challenger Biella 2 Challenger Nur-Sultan 2 Challenger Biella 3 Challenger Cleveland Challenger Belgrade Challenger Ostrava Challenger Bratislava Challenger Forli Challenger Milan Challenger Braunschweig Challenger Nur-Sultan 3 Challenger Nur-Sultan 4 Challenger Segovia Challenger Liberec Challenger San Marino Challenger Verona Challenger Barletta Challenger Banja Luka Challenger Istanbul 2 Challenger Bogota Challenger Las Vegas Challenger Charlottesville Challenger Knoxville Challenger Champaign Challenger Forli 2 Challenger Bengalaru 1 Challenger Roseto Degli Abruzzi 2 Challenger Lille Challenger St. Brieuc Challenger Aguascalientes Challenger Morelos Challenger Tunis Challenger Troisdorf Challenger Surbiton Challenger Little Rock Challenger Orlando Challenger Corrientes Challenger Buenos Aires 3 Challenger Cali Challenger Porto Challenger Bogota Challenger Rome Challenger Cassis Challenger Istanbul Challenger Charleston Challenger Tiburon Challenger Seoul Challenger Fairfield Challenger Busan Challenger Ambato Challenger Playford Challenger Sydney Challenger Calgary Challenger Drummondville Challenger Kobe Challenger Yokkaichi Challenger Nonthaburi 3 Challenger Burnie Challenger Chennai Challenger Bengaluru Challenger Pune Challenger Mexico City Challenger San Luis Potosi Challenger Morelos Challenger Seoul Challenger Leon Challenger Gwangju Challenger Tunis Challenger Jingshan Challenger Qatar Open - Doha Grand Prix de Tennis de Lyon - Lyon Open 13 - Marseille Qatar Exxon Mobil Open - Doha Medibank International - Sydney Open Sabadell Atlantico - Barcelona Brisbane International - Brisbane Grand Prix Hassan II - Casablanca Tunis Open - Tunis Qatar ExxonMobil Open - Doha Brisbane International - Brisbane Apia International - Sydney Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Casablanca Open Sabadell Atlantico - Barcelona Open de Nice Cote d'Azur - Nice AEGON Championships - London UNICEF Open - 's Hertogenbosch Campbell's Hall of Fame Tennis Championships - Newport Winston-Salem Open - Winston-Salem Kremlin Cup - Moscow Brisbane International - Brisbane Apia International - Sydney Marrakech Challenger Dubai Duty Free Tennis Championships - Dubai AEGON Championships - London Claro Open Colombia - Bogota Citi Open - Washington Winston-Salem Open - Winston-Salem Rakuten Japan Open - Tokyo Brisbane International - Brisbane Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai AEGON Championships - London Hall of Fame Tennis Championships - Newport Citi Open - Washington Malaysian Open - Kuala Lumpur Shenzhen Open - Shenzhen China Open - Beijing Rakuten Japan Open - Tokyo Kremlin Cup - Moscow If Stockholm Open - Stockholm Valencia Open - Valencia Brisbane International - Brisbane Qatar ExxonMobil Open - Doha Open Sud de France - Montpellier U.S. National Indoor Tennis Championships - Memphis Delray Beach Open - Delray Beach Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Casablanca BRD Nastase Tiriac Trophy - Bucharest Open de Nice Cote d'Azur - Nice Aegon Nottingham Open - Nottingham Hall of Fame Tennis Championships - Newport Claro Open Colombia - Bogota BB&T Atlanta Open - Atlanta Citi Open - Washington Winston-Salem Open - Winston-Salem Shenzhen Open - Shenzhen China Open - Beijing Kremlin Cup - Moscow Brisbane International - Brisbane Qatar ExxonMobil Open - Doha Apia International - Sydney Garanti Koza Sofia Open - Sofia Memphis Open - Memphis Delray Beach Open - Delray Beach Dubai Duty Free Tennis Championships - Dubai Barcelona Open BancSabadell - Barcelona BMW Open - Munich Mercedes Cup - Stuttgart Gerry Weber Open - Halle AEGON Championships - London Aegon Nottingham Open - Nottingham Hall of Fame Tennis Championships - Newport Citi Open - Washington BB&T Atlanta Open - Atlanta Winston-Salem Open - Winston-Salem Moselle Open - Metz Shenzhen Open - Shenzhen China Open - Beijing Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm Qatar ExxonMobil Open - Doha ASB Classic - Auckland Open Sud de France - Montpellier Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Mercedes Cup - Stuttgart BB&T Atlanta Open - Atlanta Citi Open - Washington Winston-Salem Open - Winston-Salem Shenzhen Open - Shenzhen China Open - Beijing If Stockholm Open - Stockholm Brisbane International - Brisbane Qatar ExxonMobil Open - Doha Garanti Koza Sofia Open - Sofia Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona TEB BNP Paribas Istanbul Open - Istanbul Ricoh Open - 's-Hertogenbosch Gerry Weber Open - Halle Hall of Fame Open - Newport BB&T Atlanta Open - Atlanta Citi Open - Washington Winston-Salem Open - Winston-Salem Chengdu Open - Chengdu China Open - Beijing Kremlin Cup - Moscow Swiss Indoors Basel - Basel Brisbane International - Brisbane Tata Open Maharashtra - Pune Sydney International - Sydney Cordoba Open - Cordoba Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril Swiss Open - Gstaad Citi Open - Washington Chengdu Open - Chengdu Rakuten Japan Open - Tokyo Adelaide International - Adelaide Tata Open Maharashtra - Pune Dubai Duty Free Tennis Championships - Dubai St. Petersburg Open - St. Petersburg bett1HULKS Championships - Cologne Astana Open - Nur-Sultan Antalya Open - Antalya Murray River Open - Melbourne Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Mercedes Cup - Stuttgart Noventi Open - Halle Nature Valley International - Eastbourne Citi Open - Washington Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Sofia Open - Sofia Kremlin Cup - Moscow Singapore Tennis Open - Singapore Sardegna Open - Cagliari Emilia-Romagna Open - Parma Belgrade 2 - Belgrade Astana Open - Nur-Sultan Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Open Parc - Lyon Libema Open - 's-Hertogenbosch cinch Championships - London Viking International - Eastbourne Hall of Fame Open - Newport Truist Atlanta Open - Atlanta Generali Open - Kitzbuhel Citi Open - Washington Winston-Salem Open - Winston-Salem Rakuten Japan Open - Tokyo San Diego Open - San Diego Adelaide International 1 - Adelaide Dubai Duty Free Tennis Championships - Dubai Biella 1 Challenger Stanford Challenger Chengdu Open - Chengdu Toulouse Challenger Hangzhou Challenger Drummondville Challenger Truist Atlanta Open - Atlanta Grand Prix Hassan II - Marrakech Qatar ExxonMobil Open - Doha Abierto de Tenis Mifel - Los Cabos Citi Open - Washington Swiss Indoors Basel - Basel BNP Paribas Open - Indian Wells Belgrade Open - Belgrade US Men's Clay Court Championship - Houston Boss Open - Stuttgart U.S. Open - New York Shanghai Rolex Masters - Shanghai Sony Open Tennis - Miami Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Rogers Cup - Montreal Western & Southern Open - Cincinnati Miami Open - Miami Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati BNP Paribas Masters - Paris Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Internazionali BNL d'Italia - Rome Rogers Cup - Toronto Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Coupe Rogers - Montreal Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Miami Open - Miami Rogers Cup - Toronto Rolex Paris Masters - Paris National Bank Open - Montreal Miami Open - Miami Australian Open - Melbourne National Bank Open - Toronto Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Davis Cup, Group 2, PO, LAT-TUN 3-2 Davis Cup, Group 2, 2R, POR-TUN 4-1 Davis Cup, Group 2, PO, SLO-TUN 4-1 Davis Cup, Group II, 1R, GBR-TUN 4-1 Davis Cup, Group II, PO, IRL-TUN 3-2 Davis Cup, Group II, PO, TUN-BLR 2-3 Davis Cup, Group II, PO, TUN-BUL 3-2 Davis Cup, Group II, 1R, TUN-SWE 2-3 Davis Cup, Group II, PO, CYP-TUN 1-4 Davis Cup, Group II, 1R, TUN-FIN 2-3 Davis Cup, Group II, PO, EST-TUN 3-2 Davis Cup, World Group II, PO, GUA-TUN 1-3 ATP Cup - Sydney Davis Cup, Group I, PO, TUN-BIH 1-3 Australian Open (juniors) Australian Open (juniors) Australian Open (juniors) French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) Australian Open (Australia, Wildcard) Australian Open (Australia, Wildcard) Olympics - London Olympics - Rio de Janeiro Davis Cup, Group II, 1R, BIH-TUN 3-1 Olympics - Tokyo